// JWT令牌加密模块(token)
const jwt = require("jsonwebtoken");

// 生成token
const siteToken = (model) => {
  let content = {
    name: model.username,
  }; // 用于生成token的信息
  let secretOrPrivateKey = "jwt"; // 这是加密的key（密钥）
  let token = jwt.sign(content, secretOrPrivateKey, {
    expiresIn: 60 * 60 * 1, // 1小时过期
  });
  return token;
};

// 检查token是否过期
const checkToken = (token) => {
  let secretOrPrivateKey = "jwt"; // 这是加密的key（密钥）
  let check = jwt.verify(token, secretOrPrivateKey, (err, decode) => {
    if (err) {
      // token时间失效
      // console.log(err);
      return false;
    } else {
      // console.log(decode);
      return true;
    }
  });
  return check;
};

module.exports = {
  siteToken,
  checkToken,
};